home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #2 / Ham Radio 2000 - Volume 2.iso / HAMV2 / MISC / HCAL-27 / ANTSCALE.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1997-03-11  |  4.2 KB  |  146 lines

  1. 10  'ANTSCALE - Antenna Frequency Scaling - 11 MAR 97 rev.
  2. 20  IF EX$=""THEN EX$="EXIT"
  3. 30  CLS:KEY OFF
  4. 40  F$="######.###"
  5. 50  I$="####.### in."
  6. 60  C$="####.## cm.="
  7. 70  UL$=STRING$(80,205)
  8. 80  X$=STRING$(80,32)
  9. 90  LF=1/LOG(10)   'log factor for base 10
  10. 100  COLOR 7,0,1
  11. 110  GOTO 220
  12. 120  '
  13. 130  '.....erase bottom of screen
  14. 140  VIEW PRINT LN TO 24:CLS:VIEW PRINT
  15. 150  RETURN
  16. 160  '
  17. 170  '.....format input line
  18. 180  LOCATE CSRLIN-1:PRINT SPC(7);
  19. 190  LOCATE CSRLIN,47:PRINT STRING$(7,".");USING M$;ZZ;
  20. 200  RETURN
  21. 210  '
  22. 220  '.....start
  23. 230  COLOR 15,2
  24. 240  PRINT " ANTENNA FREQUENCY SCALING";TAB(57)"by George Murphy VE3ERP ";
  25. 250  COLOR 1,0:PRINT STRING$(80,223);:COLOR 7,0
  26. 260  '
  27. 270  LN=3:GOSUB 130:LOCATE 3
  28. 280  GOSUB 1070   'preface
  29. 290  PRINT UL$;
  30. 300  PRINT " Press number in < > for:"
  31. 310  PRINT UL$;
  32. 320  PRINT "  < 1 >  Frequency Scaling"
  33. 330  PRINT "  < 2 >  Element Diameter/Length Scaling"
  34. 340  PRINT UL$;
  35. 350  PRINT "  < 0 >  EXIT"
  36. 360  Z$=INKEY$:IF Z$=""THEN 360
  37. 370  IF Z$="0"THEN CLS:RUN EX$
  38. 380  IF Z$="1"OR Z$="2"THEN LN=3:GOSUB 130:LOCATE LN:GOTO 410
  39. 390  GOTO 360
  40. 400  '
  41. 410  '.....initial inputs
  42. 420  INPUT " ENTER: Original Design Frequency...............(MHz)";F1
  43. 430  ZZ=F1:M$=F$:GOSUB 170:PRINT " MHz"
  44. 440  '
  45. 450  INPUT " ENTER: Scaled Frequency of operation...........(MHz)";F2
  46. 460  ZZ=F2:M$=F$:GOSUB 170:PRINT " MHz"
  47. 470  SC=F1/F2   'scale
  48. 480  PRINT "        Scale........................................";
  49. 490  PRINT USING F$;SC;:PRINT ":1"
  50. 500  IF Z$="1"THEN 530
  51. 510  IF Z$="2"THEN 640
  52. 520  '
  53. 530  '.....frequency scaling
  54. 540  COLOR 0,7:PRINT " Enter original dimension in any unit. Scaled dimension ";
  55. 550  PRINT "is in same unit. ":COLOR 7,0
  56. 560  INPUT " ENTER: Original design dimension or 0 to quit.......";OD
  57. 570  IF OD=0 THEN LOCATE CSRLIN-1:PRINT X$;:LOCATE 6:PRINT X$;:GOTO 610
  58. 580  ZZ=OD:M$=F$:GOSUB 170:PRINT " =";:PRINT USING M$;ZZ*SC
  59. 590  LOCATE CSRLIN-1,34:PRINT STRING$(13,".")
  60. 600  GOTO 560
  61. 610  LOCATE 6,66:PRINT "Scaled Dimen."
  62. 620  GOTO 1300   'end
  63. 630  '
  64. 640  '.....element diameter scaling
  65. 650  COLOR 0,7
  66. 660  PRINT " Do you want enter dimensions in (c)entimetes or (i)nches?  (c/i) "
  67. 670  COLOR 7,0
  68. 680  D$=INKEY$:IF D$=""THEN 680
  69. 690  IF D$="c"THEN UM=2.54:UM$="cm.":GOTO 730
  70. 700  IF D$="i"THEN UM=1   :UM$="in.":GOTO 730
  71. 710  GOTO 680
  72. 720  '
  73. 730  LN=CSRLIN-1:GOSUB 130:LOCATE LN+1
  74. 740  PRINT " ENTER: Original Element Diameter...............(";UM$;")";
  75. 750  INPUT EL1:EL1=EL1/UM:ZZ=EL1*2.54:M$=C$:GOSUB 170:PRINT USING I$;EL1
  76. 760  D1=EL1/(11803/F1)    'free space wavelength
  77. 770  '
  78. 780  PRINT " ENTER: Original Element Length.................(";UM$;")";
  79. 790  INPUT LG1:LG1=LG1/UM:ZZ=LG1*2.54:M$=C$:GOSUB 170:PRINT USING I$;LG1
  80. 800  L1=LG1/(11803/F1)    'free space wavelength
  81. 810  M1=LOG(2/D1)*LF
  82. 820  A1=430.8*M1-339
  83. 830  LR1=0.5-(33.25+3.19*M1-0.35*M1^2)/(861.6*M1-678)
  84. 840  FR1=LR1/L1
  85. 850  '
  86. 860  ND=EL1*SC*UM
  87. 870  PRINT "        Scaled Element Diameter......................";USING C$;ND;
  88. 880  PRINT USING I$;EL1*SC
  89. 890  LG2=LG1*SC*UM
  90. 900  PRINT "        Scaled Element Length........................";USING C$;LG2;
  91. 910  PRINT USING I$;LG1*SC
  92. 920  PRINT
  93. 930  PRINT " ENTER: Your choice of scaled element diameter..(";UM$;")";
  94. 940  INPUT EL2:EL2=EL2/UM:ZZ=EL2*2.54:M$=C$:GOSUB 170:PRINT USING I$;EL2
  95. 950  D2=EL2/(11803/F2)    'free space wavelength
  96. 960  M2=LOG(2/D2)*LF
  97. 970  A2=430.8*M2-339
  98. 980  LR2=0.5-(33.25+3.19*M2-0.35*M2^2)/(861.6*M2-678)
  99. 990  FR2=1-(A1*(1-FR1))/A2
  100. 1000  L2=LR2/FR2
  101. 1010  WL=11803/F2   'free space wavelength in inches
  102. 1020  LGTH=L2*WL*2.54
  103. 1030  PRINT "        Corrected element length for this diameter...";
  104. 1040  PRINT USING C$;LGTH;:PRINT USING I$;L2*WL
  105. 1050  GOTO 1300
  106. 1060  '
  107. 1070  '.....preface
  108. 1080  T=7
  109. 1090  PRINT TAB(T);
  110. 1100  PRINT "Any antenna design can be scaled for use on another frequency or on"
  111. 1110  PRINT TAB(T);
  112. 1120  PRINT "another amateur band. To scale an antenna properly, ALL physical"
  113. 1130  PRINT TAB(T);
  114. 1140  PRINT "dimensions must be scaled, including element lengths, element"
  115. 1150  PRINT TAB(T);
  116. 1160  PRINT "spacings, boom length and element diameters. This usually results"
  117. 1170  PRINT TAB(T);
  118. 1180  PRINT "in a scaled element diameter of inconvenient size. Simply changing"
  119. 1190  PRINT TAB(T);
  120. 1200  PRINT "the diameter is not satisfactory without making a corresponding"
  121. 1210  PRINT TAB(T);
  122. 1220  PRINT "element length correction. This program computes both Frequency"
  123. 1230  PRINT TAB(T);
  124. 1240  PRINT "scaling and Element diameter/length scaling."
  125. 1250  PRINT
  126. 1260  PRINT TAB(T);
  127. 1270  PRINT "(ref. The ARRL Antenna Book, 17th Edition, pages 2-24 and 2-25)"
  128. 1280  RETURN
  129. 1290  '
  130. 1300  '.....end
  131. 1310  GOSUB 1330:GOTO 270
  132. 1320  '
  133. 1330  'HARDCOPY
  134. 1340  GOSUB 1450:LOCATE 25,2:COLOR 14,6
  135. 1350  PRINT " Press 1 to print screen, 2 to print screen & ";
  136. 1360  PRINT "advance paper, or 3 to continue.";:COLOR 7,0
  137. 1370  Z$=INKEY$:IF Z$="3"THEN GOSUB 1450:RETURN
  138. 1380  IF Z$="1"OR Z$="2"THEN GOSUB 1450:GOTO 1400
  139. 1390  GOTO 1370
  140. 1400  FOR QX=1 TO 24:FOR QY=1 TO 80
  141. 1410  LPRINT CHR$(SCREEN(QX,QY));
  142. 1420  NEXT QY:NEXT QX
  143. 1430  IF Z$="2"THEN LPRINT CHR$(12)
  144. 1440  GOTO 1340
  145. 1450  LOCATE 25,1:PRINT STRING$(80,32);:RETURN
  146.